/*
	Copyright (C) 2019 Zongming Liu <1849059316@qq.com>

	This program is free software; you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 2 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License along
	with this program; if not, write to the Free Software Foundation, Inc.,
	51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/

#include "TestScene.h"

TestScene::TestScene()
	:m_bg(nullptr)
	, m_logo(nullptr)
{

}

TestScene::~TestScene()
{

}

void TestScene::enterScene()
{
	GameWorld::getInstance()->
		getDefultSpriteFrameCache()->
		addSpriteFramesWithImagePack(_R("relo.xml"), _R("role.png"));

	m_bg = Sprite::create(_R("logo_bg.png"), this);
	m_logo = Sprite::create(_R("logo_sky2d.png"), this);
	auto size = GameWorld::getInstance()->getAppView()->getWinSize();
	m_bg->setPosition(Vector2(size.width / 2, size.height / 2));
	m_logo->setPosition(Vector2(size.width / 2, size.height / 2));
	//m_logo->setScalingX(2);
	//m_logo->setAnchorPoint(Vector2(0, 0));
	auto cach = GameWorld::getInstance()->getDefultSpriteFrameCache();
	//auto sp = Sprite::create(cach->getSpriteFrame(L"player1-1-1"), this);
	//sp->setPosition(Vector2(100, 100));

	auto sp_p = SpriteFrame::createFromPicture(_R("role.png"), Rect(0, 0, 364, 251));
	auto p = Sprite::create(sp_p, this);
	p->setPosition(Vector2(300,400));
	p->setOpacity(0.1);
	p->setColor(Color3(Color4f::Red));
	auto pp = Sprite::create(sp_p, p);
	pp->setPosition(Vector2(0, 0));

	auto button = PushButton::create();
	button->setBackgroundImage(Scale9Image::createUniquePtr(_R("bnt.png"),Rect::Zero));
	button->setBackgroundImage(Scale9Image::createUniquePtr(_R("bnt_pressed.png"), Rect::Zero), Widget::WidgetState::Pressed);
	button->resize(Size(100, 40));
	button->setPosition(Vector2(300, 200));
	button->setClickedListener([this,p](EventMouse* e) {
		p->setOpacity(p->getOpacity() + 0.05f);
		});
	return;
}

void TestScene::quitScene()
{
}
